package com.itheima.easy.mapper;

import com.github.pagehelper.Page;
import com.itheima.easy.entity.CheckIn;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDateTime;
import java.util.List;

@Mapper
public interface CheckInMapper {
    long countByExample(CheckIn example);

    int deleteByExample(CheckIn example);

    int deleteByPrimaryKey(Long id);

    int insert(CheckIn record);

    int insertSelective(CheckIn record);

    List<CheckIn> selectByExampleWithBLOBs(CheckIn example);

    List<CheckIn> selectByExample(CheckIn example);

    CheckIn selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") CheckIn record, @Param("example") CheckIn example);

    int updateByExampleWithBLOBs(@Param("record") CheckIn record, @Param("example") CheckIn example);

    int updateByExample(@Param("record") CheckIn record, @Param("example") CheckIn example);

    int updateByPrimaryKeySelective(CheckIn record);

    int updateByPrimaryKeyWithBLOBs(CheckIn record);

    int updateByPrimaryKey(CheckIn record);

    /**
     * 这是Mybatis Generator拓展插件生成的方法(请勿删除).
     * This method corresponds to the database table check_in
     *
     * @mbg.generated
     * @author hewei
     */
    int batchInsert(@Param("list") List<CheckIn> list);


    Page<List<CheckIn>> selectByPage(@Param("checkInCode")String checkInCode, @Param("name")String name, @Param("idCardNo")String idCardNo, @Param("startTime") LocalDateTime startTime, @Param("endTime")LocalDateTime endTime,  @Param("applicatId") Long applicatId, @Param("deptNo") String deptNo);

}